package com.util.gzp.file;

import java.io.File;
import java.io.FileOutputStream;

/**
 * ClassName: FileUtil
 * Package: com.bestescortbedsystem.util
 *
 * @author: guanzepeng
 * @Date: 2021/2/24 16:13 星期三
 * @Description: 上传文件工具类
 */
public class FileUtil {

	/**
	 * 进行文件上传
	 * @param file
	 * @param filePath
	 * @param fileName
	 * @throws Exception
	 */
		public static void uploadFile(byte[] file, String filePath, String fileName) throws Exception {
			File targetFile = new File(filePath);
			if(!targetFile.exists()){
				boolean mkdirs = targetFile.mkdirs();
			}
			FileOutputStream out = new FileOutputStream(filePath+fileName);
			out.write(file);
			out.flush();
			out.close();
		}


//	/**
//	 * 处理上传图片 演示代码
//	 * @param file
//	 * @param model
//	 * @return
//	 */
//	@RequestMapping("/doUpload")
//	@ApiOperation(value = "处理用户头像上传的接口")
//	public String uploadImg(
//			HttpSession session,
//			// 定义一个 MultipartFile 类型的参数 file
//			@RequestParam("pclogo") MultipartFile file, Model model) throws InterruptedException {
//		log.info("--------------------------------------进入了uploadImg方法----------------------------------------");
//		// 如果图片为空,返回false
//		if ((file.getOriginalFilename().isEmpty())) {
//			log.info("图片为空");
//		} else {
//			Head head = new Head();
//			// 获取图片的名字
//			String fileName = file.getOriginalFilename();
//			//添加UUID
//			String uuid = UUID.randomUUID().toString();
//			fileName = "/" + uuid + fileName;
//			// 图片存放的文件夹地址
//			String filePath = null;
//			File directory = new File("src/main/resources/templates/img");
//			try {
//				filePath = directory.getCanonicalPath();
//			} catch (IOException e) {
//				e.printStackTrace();
//			}
//			// 文件夹地址 + 名字 = 图片的路径
//			String fileAddress = "/img" + fileName;
//			log.info("图片的路径为:" + fileAddress);
//			try {
//				// 图片上传的工具类
//				// 参数一：图片的编码格式的字节数组
//				// 参数二：图片存放的文件夹地址
//				// 参数三：图片的名字
//				log.info(filePath);
//				log.info(fileName);
//				FileUtil.uploadFile(file.getBytes(), filePath, fileName);
//				// 把图片路径写入数据库
//				head.setHeadAddress(fileAddress);
//				String userId = (String) session.getAttribute("userId2");
//				head.setId(Integer.valueOf(userId));
//				boolean	b = userService.insertPhoto(head);
//			} catch (Exception e) {
//				e.printStackTrace();
//			}
//		}
//		Thread.sleep(1000);
//		return "redirect:/user/UserMoney.html";
//	}

//前端演示代码
//			<button type="button" id="updateImg" data-toggle="modal" data-target="#myModal">
//	修改头像
//			</button>
//<div class="modal fade" id="myModal">
//	<div class="modal-dialog">
//		<div class="modal-content">
//			<form  id="form-upload" class="form-horizontal" role="form" method="post" enctype="multipart/form-data" action="/login/doUpload">
//			<!-- 模态框头部 -->
//			<div class="modal-header" style="background-color: black; color: white;">
//				<h4 class="modal-title">上传头像</h4>
//				<button type="button" class="close" data-dismiss="modal" style="color: white;">&times;</button>
//			</div>
//			<!-- 模态框主体 -->
//			<div class="modal-body" style="padding-right: 58px;">
//
//				<div class="form-group has-success show">
//					<label style="padding-left: 10%">新增图片</label>
//					<img src="" class="img-circle img-thumbnail img-responsive" id="avarimgs2" alt="" />
//
//					<div class="form-group" style="padding-left: 10%">
//						<label class="sr-only" for="xdaTanFileImg2">图片输入</label>
//						<input type="file" name="pclogo" id="xdaTanFileImg2" onchange="xmTanUploadImg2(this)">
//
//					</div>
//				</div>
//
//			</div>
//
//			<!-- 模态框底部 -->
//			<div class="modal-footer">
//				<button type="submit" class="btn btn-primary" >提交</button>
//				<button type="button" class="btn btn-secondary"  data-dismiss="modal">关闭</button>
//			</div>
//			</form>
//		</div>
//	</div>
//</div>

//	//实现图片的实时更新
//	if (typeof FileReader == 'undefined') {
//		document.getElementById("xmTanDiv").InnerHTML = "<h1>当前浏览器不支持FileReader接口</h1>";
//		document.getElementById("xdaTanFileImg2").setAttribute("disabled", "disabled");
//	}
//	//选择图片，马上预览
//	function xmTanUploadImg2(obj) {
//		let file = obj.files[0];
//		console.log(obj);console.log(file);
//		console.log("file.size = " + file.size);
//		let reader = new FileReader();
//		reader.onloadstart = function (e) {
//			console.log("开始读取....");
//		}
//		reader.onprogress = function (e) {
//			console.log("正在读取中....");
//		}
//		reader.onabort = function (e) {
//			console.log("中断读取....");
//		}
//		reader.onerror = function (e) {
//			console.log("读取异常....");
//		}
//		reader.onload = function (e) {
//			console.log("成功读取....");
//			let img = document.getElementById("avarimgs2");
//			img.src = e.target.result;
//			//或者 img.src = this.result;  //e.target == this
//		}
//		reader.readAsDataURL(file);
//	}

}

